package com.ruoyi.gcgl.domain;

import java.math.BigDecimal;
import java.util.Date;

import com.fasterxml.jackson.annotation.JsonFormat;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 项目里程碑对象 sj_project_milestone
 * 
 * @author ruoyi
 * @date 2025-08-07
 */
public class SjProjectMilestone extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键 */
    private Long id;
    
    private Long pId;
    
    private Long parentId;

    /** 合同ID */
    @Excel(name = "合同ID")
    private Long gcProjectid;
    
    private String projectName;

    /** 任务号 */
    @Excel(name = "任务号")
    private String orderNo;

    /** 任务名称 */
    @Excel(name = "任务名称")
    private String name;

    /** 状态 */
    @Excel(name = "状态")
    private Integer status;

    /** 计划开始 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "计划开始", width = 30, dateFormat = "yyyy-MM-dd")
    private Date pstartAt;

    /** 计划结束 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "计划结束", width = 30, dateFormat = "yyyy-MM-dd")
    private Date pendAt;

    /** 工作日 */
    @Excel(name = "工作日")
    private BigDecimal count;

    /** 进度百分比 */
    @Excel(name = "进度百分比")
    private String jdbfb;

    /** 实际开始日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "实际开始日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date sstartAt;

    /** 实际结束日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "实际结束日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date sendAt;

    /** 负责人 */
    @Excel(name = "负责人")
    private String owner;

    /** 描述 */
    @Excel(name = "描述")
    private String descs;

    /** 删除标记 0:删除 1:没删除 */
    @Excel(name = "删除标记 0:删除 1:没删除")
    private Integer deleteFlag;

    /** 创建人 */
    @Excel(name = "创建人")
    private String createUser;

    /** 创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date createAt;

    /** 修改人 */
    @Excel(name = "修改人")
    private String updateUser;

    /** 修改时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "修改时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date updateAt;
    
    private Integer sort;
    
    private Long ownerId;
    
    //金额
    private BigDecimal jine;
    
    public BigDecimal getJine() {
		return jine;
	}

	public void setJine(BigDecimal jine) {
		this.jine = jine;
	}

	public Long getOwnerId() {
		return ownerId;
	}

	public void setOwnerId(Long ownerId) {
		this.ownerId = ownerId;
	}

	public Long getParentId() {
		return parentId;
	}

	public void setParentId(Long parentId) {
		this.parentId = parentId;
	}

	public Integer getSort() {
		return sort;
	}

	public void setSort(Integer sort) {
		this.sort = sort;
	}

	public Long getpId() {
		return pId;
	}

	public void setpId(Long pId) {
		this.pId = pId;
	}

	public String getProjectName() {
		return projectName;
	}

	public void setProjectName(String projectName) {
		this.projectName = projectName;
	}

	public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setGcProjectid(Long gcProjectid) 
    {
        this.gcProjectid = gcProjectid;
    }

    public Long getGcProjectid() 
    {
        return gcProjectid;
    }
    public void setOrderNo(String orderNo) 
    {
        this.orderNo = orderNo;
    }

    public String getOrderNo() 
    {
        return orderNo;
    }
    public void setName(String name) 
    {
        this.name = name;
    }

    public String getName() 
    {
        return name;
    }
    public void setStatus(Integer status) 
    {
        this.status = status;
    }

    public Integer getStatus() 
    {
        return status;
    }
    public void setPstartAt(Date pstartAt) 
    {
        this.pstartAt = pstartAt;
    }

    public Date getPstartAt() 
    {
        return pstartAt;
    }
    public void setPendAt(Date pendAt) 
    {
        this.pendAt = pendAt;
    }

    public Date getPendAt() 
    {
        return pendAt;
    }
    public void setCount(BigDecimal count) 
    {
        this.count = count;
    }

    public BigDecimal getCount() 
    {
        return count;
    }
    public void setJdbfb(String jdbfb) 
    {
        this.jdbfb = jdbfb;
    }

    public String getJdbfb() 
    {
        return jdbfb;
    }
    public void setSstartAt(Date sstartAt) 
    {
        this.sstartAt = sstartAt;
    }

    public Date getSstartAt() 
    {
        return sstartAt;
    }
    public void setSendAt(Date sendAt) 
    {
        this.sendAt = sendAt;
    }

    public Date getSendAt() 
    {
        return sendAt;
    }
    public void setOwner(String owner) 
    {
        this.owner = owner;
    }

    public String getOwner() 
    {
        return owner;
    }
    public void setDescs(String descs) 
    {
        this.descs = descs;
    }

    public String getDescs() 
    {
        return descs;
    }
    public void setDeleteFlag(Integer deleteFlag) 
    {
        this.deleteFlag = deleteFlag;
    }

    public Integer getDeleteFlag() 
    {
        return deleteFlag;
    }
    public void setCreateUser(String createUser) 
    {
        this.createUser = createUser;
    }

    public String getCreateUser() 
    {
        return createUser;
    }
    public void setCreateAt(Date createAt) 
    {
        this.createAt = createAt;
    }

    public Date getCreateAt() 
    {
        return createAt;
    }
    public void setUpdateUser(String updateUser) 
    {
        this.updateUser = updateUser;
    }

    public String getUpdateUser() 
    {
        return updateUser;
    }
    public void setUpdateAt(Date updateAt) 
    {
        this.updateAt = updateAt;
    }

    public Date getUpdateAt() 
    {
        return updateAt;
    }

	@Override
	public String toString() {
		return "SjProjectMilestone [id=" + id + ", pId=" + pId + ", parentId="
				+ parentId + ", gcProjectid=" + gcProjectid + ", projectName="
				+ projectName + ", orderNo=" + orderNo + ", name=" + name
				+ ", status=" + status + ", pstartAt=" + pstartAt + ", pendAt="
				+ pendAt + ", count=" + count + ", jdbfb=" + jdbfb
				+ ", sstartAt=" + sstartAt + ", sendAt=" + sendAt + ", owner="
				+ owner + ", descs=" + descs + ", deleteFlag=" + deleteFlag
				+ ", createUser=" + createUser + ", createAt=" + createAt
				+ ", updateUser=" + updateUser + ", updateAt=" + updateAt
				+ ", sort=" + sort + "]";
	}
}